package com.gyh.system.sys.service;

import org.springframework.beans.factory.InitializingBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.gyh.system.common.security.Digests;
import com.gyh.system.common.security.EncodsUtils;
import com.gyh.system.sys.dao.UserDao;
import com.gyh.system.sys.entity.User;
import com.gyh.system.sys.utils.UserUtils;

/**
* @author 作者 gyh:
* @version 创建时间：2018年1月13日 上午12:53:40
* 
*/
@Service
public class SystemService implements InitializingBean {

	public static final int HASH_INTERATIONS = 1024;
	
	@Autowired
	private UserDao userDao;
	
	//@Autowired
	
	/**
	 * 根据登录名获取用户
	 * @param loginName
	 * @return
	 */
	public User getUserByLoginName(String loginName) {
		return UserUtils.getByLoginName(loginName);
	}
	
	
	
	/**
	 * 验证密码
	 * @param plainPassword 明文密码
	 * @param password 密文密码
	 * @return 验证成功返回true
	 */
	public static boolean validatePassword(String plainPassword, String password) {
		String plain = EncodsUtils.unescapeHtml(plainPassword);
		byte[] salt = EncodsUtils.decodeHex(password.substring(0,16));
		byte[] hashPassword = Digests.sha1(plain.getBytes(), salt, HASH_INTERATIONS);
		return password.equals(EncodsUtils.encodeHex(salt)+EncodsUtils.encodeHex(hashPassword));
	}
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	@Override
	public void afterPropertiesSet() throws Exception {
		// TODO Auto-generated method stub
		
	}

}
